table of contents
STRDUP(3) | Podręcznik programisty Linuksa | STRDUP(3) |
NAZWA¶
strdup, strndup, strdupa, strndupa - powielenie łańcucha
SKŁADNIA¶
#include <string.h> char *strdup(const char *s); #define _GNU_SOURCE
#include <string.h> char *strndup(const char *s, size_t n);
char *strdupa(const char *s);
char *strndupa(const char *s, size_t n);
OPIS¶
Uwaga! To tłumaczenie może być nieaktualne!
Funkcja strdup() zwraca wskaźnik do nowego łańcucha, który stanowi kopię łańcucha s. Pamięć dla nowego łańcucha jest przydzielana za pomocą malloc(3) i może być zwolniona za pomocą free(3).
Funkcja strndup() jest podobna, lecz kopiuje co najwyżej n znaków. Jeśli s jest dłuższe niż n, kopiowane jest tylko n znaków i dodawany jest kończący znak NUL.
strdupa i strndupa są podobne, ale korzystają z alloca(3) do przydzielania pamięci na bufor. Są one dostępne wyłącznie, gdy używany jest pakiet GNU GCC, i dotyczą ich te same ograniczenia, które opisano w alloca(3).
WARTOŚĆ ZWRACANA¶
Funkcja strdup() zwraca wskaźnik do skopiowanego łańcucha lub NULL, gdy nie jest dostępna dostateczna ilość pamięci.
BŁĘDY¶
- ENOMEM
- Nie można przydzielić dostatecznej ilości pamięci potrzebnej dla kopii łańcucha.
ZGODNE Z¶
SVID 3, BSD 4.3. strndup(), strdupa() i strndupa() są rozszerzeniami GNU.
ZOBACZ TAKŻE¶
INFORMACJE O TŁUMACZENIU¶
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:
- man --locale=C 3 strdup
Prosimy o pomoc w aktualizacji stron man - więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages-pl/.
1993-04-12 | GNU |